#% <space> sends nothing - allows macros to start with spaces
#%2 1 if on a paradise server, 0 otherwise
#
#FULLY CAPITALIZED:
#%L three character name of target planet
#%I sender full player name (16 character max)
#%U full name of target player (16 character max)
#%Z 3 letter team id of target planet
#%B sender nearest planet
#
#Ping stats: (may differ slightly from server '!' ping stats)
#%v average ping stat round trip time
#%V ping stat round trip standard deviation
#%y percent total packet loss as calculated by server formula
#
#Miscellanous:
#%m the last message you sent
#%M the last message you sent in all caps
#
#As a further extension to NEWMACRO, a macro may now be sent
#to any of the following destinations:
#
#%i %I %c send message to self
#%u %U %p send message to player nearest mouse
#%t %z %Z send message to team of player nearest mouse
#%g send message to nearest friendly player to my ship
#%h send message to nearest enemy player to my ship
#
#Further, tests may be done within the macro system, the syntax
#for these test is as follows.
#%? introduces a test
#= equivalence
#> greater
#< less
#
#Expressions are evaluated on a character by character basis until the
#test is resolved. The text of the test is then replaced in the macro
#by 1 or 0.
#
#Test are then fed to a syntax I call conditional text. The best way
#to demonstrate how this works is example.
#
#1%{included if true%!included if false%}
#
#This would print:
#included if true
#
#0%{included if true%!included if false%}
#included if false
#
# Paradise orthoganal macros (Robert Forsman)
#
# start with a $
#
# field 1:
# (n)earest
# (t)arget
# (s)elf (doesn't have fields 2 and 3)
# (_) ego (has no other fields)
#
# field 2:
# (a)ny
# (t)eammate
# (f)riendly
# (h)ostile
#
# field 3:
# (a)ny
# (u)ser
# (p)lanet (includes asteroids)
# (s)tar
# (n)ebula
# (b)lack hole
# (^) non-planet
# (*) any stellar object
#
# field 4: (optional) NYI
# (U)ppercase
# (C)apitalize
# (L)owercase
#
# field 5:
# full (n)ame (Hammor, Thought)
# (i)dentifier (e.g. R5, Ka, Can, Sco)
# (#) number (0-9a-z for players, %d for planets)
# (t)eam name (Romulan)
# (s)hort team id (ROM)
# (l)etter of team (R)
# (a)rmies
# (@) sector
# (M) 0=not metal planet, 1=metal, 2=repair, 3=shipyard
# (A) 0=not arable, 1=arable, 2=agri
# (D) 0=not dilithium, 1=dilithium, 2=fuel
#
# Any implementation of the paradise $ codes (subset or superset)
# must implement and document the $_ code. -- Robert Forsman
#start macros:
# new distresses
#singleMacro: E
#mac.F.T: %?%S=SB%{Your starbase (%i) is carrying %?%a=0%{NO%!%a%} %?%a=1%{army%!armies%}%!%T%c@%B: I have %?%a=0%{NO%!%a%} %?%a=1%{army%!armies%} on board, heading for %L%?%n<0%{ (untouched)%!@%n%}%}
#mac.F.T: %?%S=SB%{Your starbase (%i) is carrying %?%a=0%{NO%!%a%} %?%a=1%{army%!armies%}%!%T%c@%B: I have %?%a=0%{NO%!%a%} %?%a=1%{army%!armies%} on board%}
#mac.Z.T: Going for %L NOW!! DET for me!! (%?%a=0%{NO%!%a%} %?%a=1%{army%!armies%})
#mac.T.T: %T%c@%B(%S): Going for %L@%n with %a %?%a=1%{ogre%!ogres%}! DET! %L@%n
#mac.e.T: %T%c@%B(%S): NEED ESCORT TO %L @ %n, Carrying %a %?%a=1%{ogre%!ogres%} DET for me!